package demo_09_24_02;

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
import class_01.demo_01;

/**
 * @author:连志鹏
 * @className:work_02
 * @descrption:
 * @date: 2021/9/24 17:18
 * @version: 0.1
 * @since: 1.8
 */
public class work_02 {
    public static int ran(int max1, int min1){
        int random;
        double dou = Math.random();
        random = (int)(dou*(max1-min1)+min1);
        return random;

    }
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
//        sc.next();
        Random random = new Random(10);

/*      要求用户输入一个0到2之间的整数如果用户输入0输出“你出的是石头”，
        如果用户输入1就输出“你出的是剪刀”，如果用户输入的是2就输出“你出的是布”，
        然后再问是否要继续出拳,如果回答“y”就重复以上过程，
         否则结束程序*/
        boolean bo = true;
        int num = 0;
        String str = "";
        while (true)
        {
            if(!bo)
                break;
            num = sc.nextInt();
            if(num == 0)
            {
                System.out.println("石头");
            }
            if(num == 1)
            {
                System.out.println("剪刀");
            }
            if(num == 2)
            {
                System.out.println("布");
            }
            System.out.println("是否出拳");
            str= sc.next();
            if(!str.equals("y"))
                bo = false;

        }
//银行取款系统的密码判断，输入密码之后，进行密码判断，如果密码错误，继续输入密码。直到密码正确或者输入3次之后结束（密码可以是字符串也可以是int类型数值）
        String passWord = "123";

        for (int i = 0; i < 3; i++) {
            System.out.println("请输入密码");
            str = sc.next();
            if(str.equals(passWord))
            {
                System.out.println("正确");
                break;
            }
        }
//求1到100之间所有能被3整除的整数的总和
        int sum = 0;
        for (int i = 1; i < 101; i++) {
            if((i%3)==0)
                sum = sum + i;
        }
        System.out.println(sum);

//输出乘法口诀表
        for (int i = 1; i < 10; i++) {
            for (int j = i; j < 10; j++) {
                System.out.print(i+"*"+j+"="+i*j+"  ");
            }
            System.out.println();
        }


//打印出所有的 "水仙花数"
//        所谓 "水仙花数"是指一个三位数，其各位数字立方和等于该数本身。
//        例如：153是一个 "水仙花数 "，因为153=1的三次方＋5的三次方＋3的三次方

        double ret;
        ArrayList list = new ArrayList();
        for (int i = 100; i < 1000; i++) {
            list = splitNum(i);

            ret =  Math.pow((int) list.get(0),3)+Math.pow((int) list.get(1),3)+
                    Math.pow((int) list.get(2),3);
            if(ret == i)
                System.out.print((int)ret+" ");
//            System.out.println(list);
        }


    }
    public static ArrayList splitNum(int num)
    {
        demo_01 demo = new demo_01();
        return demo.splitNum_01(num);
    }

}
